package edu.kit.aifb.ldstream.stat.distrib;


/**
 * Simple Interface to provide easy similarity check for each Distributions
 */
public interface IDistribution{
	
	/**
	 * Flag to identify  unknown distribution
	 */
	
	public static final int UNKNOWN = -1;
	/**
	 * Flag to identify  binomial distribution
	 */
	public static final int BINOMIAL = 0;
	/**
	 * Flag to identify  Poisson distribution
	 */
	public static final int POISSON = 1;
	/**
	 * Flag to identify  discrete uniform distribution
	 */
	public static final int UNIFORM_DISCRETE = 2;
	/**
	 * Flag to identify  normal distribution
	 */
	public static final int NORMAL = 3;
	/**
	 * Flag to identify  exponential distribution
	 */
	public static final int EXPONENTIAL = 4;
	/**
	 * Flag to identify  continuous uniform distribution
	 */
	public static final int UNIFORM_CONTINUOUS = 5;

	/**
	 * Flag to identify a single value
	 */
	public static final int SINGLE_VALUE = 6;
	
	/**
	 * Flag to identify when all occurrences have the same count
	 */
	public static final int SAME_COUNT = 7;
	
	/**
	 * Returns the type of the distribution.
	 * 
	 * @return distribution type.
	 */
	public int getDistributionType();


}
